home *** CD-ROM | disk | FTP | other *** search
/ Shareware Grab Bag / Shareware Grab Bag.iso / 015 / as.arc / PS.BAS next >
BASIC Source File  |  1986-03-01  |  8KB  |  258 lines

  1. 1000 REM ********************************************************************
  2. 1020 REM *                                                                  *
  3. 1040 REM *     This program sets up various operating modes on the Epson    *
  4. 1060 REM *     FX-85 printer from menus displayed on the console output.    *
  5. 1080 REM *     This program can easily be changed for the wider FX-185.     *
  6. 1100 REM *     Only text modes are addressed; graphics may be added in a    *
  7. 1120 REM *     future version.                                              *
  8. 1140 REM *               Author :  T. Kilian                                *
  9. 1160 REM *               Date   :  Dec. 15, 1985                            *
  10. 1180 REM *               Version:  2.0  March 1, 1986                       *
  11. 1200 REM *                                                                  *
  12. 1220 REM ********************************************************************
  13. 1240 REM
  14. 1260 REM
  15. 1280  WIDTH 40
  16. 1300 CLS
  17. 1320 REM ** PRINT TITLE & MAIN MENU **
  18. 1340 PRINT "EPSON FX-85 PRINTER SETUP  -  MAIN MENU
  19. 1360 PRINT
  20. 1380 PRINT
  21. 1400 PRINT "          1 - CHARACTER FONT
  22. 1420 PRINT
  23. 1440 PRINT "          2 - ENHANCEMENTS
  24. 1460 PRINT
  25. 1480 PRINT "          3 - PAGE MARGINS
  26. 1500 PRINT
  27. 1520 PRINT "          4 - LINE SPACING
  28. 1540 PRINT
  29. 1560 PRINT "          5 - REINITIALIZE
  30. 1580 PRINT
  31. 1600 PRINT "          6 - TRY IT
  32. 1620 PRINT
  33. 1640 PRINT "          9 - RETURN TO DOS
  34. 1660 PRINT
  35. 1680 PRINT
  36. 1700 PRINT "         Enter selection :  "
  37. 1720 GOSUB 6020
  38. 1740 IF ITEM=1 THEN 1880
  39. 1760 IF ITEM=2 THEN 2560
  40. 1780 IF ITEM=3 THEN 3500
  41. 1800 IF ITEM=4 THEN 4800
  42. 1820 IF ITEM=5 THEN 5740
  43. 1840 IF ITEM=6 THEN 5800
  44. 1860 IF ITEM=9 THEN 6100 ELSE 1280
  45. 1880 REM ** CHARACTER FONT SELECTION ROUTINE **
  46. 1900 CLS
  47. 1920 REM ** PRINT SUB-MENU **
  48. 1940 PRINT "      CHARACTER FONT SELECTION MENU
  49. 1960 PRINT
  50. 1980 PRINT
  51. 2000 PRINT "          1 - PICA (default)
  52. 2020 PRINT
  53. 2040 PRINT "          2 - NEAR LETTER QUALITY
  54. 2060 PRINT
  55. 2080 PRINT "          3 - ELITE
  56. 2100 PRINT
  57. 2120 PRINT "          4 - ITALIC
  58. 2140 PRINT
  59. 2160 PRINT "          9 - RETURN TO MAIN MENU
  60. 2180 PRINT
  61. 2200 PRINT
  62. 2220 PRINT "          Enter selection :  "
  63. 2240 GOSUB 6020
  64. 2260 IF ITEM=1 THEN 2360
  65. 2280 IF ITEM=2 THEN 2400
  66. 2300 IF ITEM=3 THEN 2440
  67. 2320 IF ITEM=4 THEN 2480
  68. 2340 IF ITEM=9 THEN 1280 ELSE 2220
  69. 2360 LPRINT CHR$(27)"P"
  70. 2380 GOTO 5960
  71. 2400 LPRINT CHR$(27)"x"CHR$(1)
  72. 2420 GOTO 5960
  73. 2440 LPRINT CHR$(27)"M"
  74. 2460 GOTO 5960
  75. 2480 LPRINT CHR$(27)"4"
  76. 2500 GOTO 5960
  77. 2520 LPRINT CHR$(27)"j"CHR$(72)
  78. 2540 GOTO 1280
  79. 2560 REM ** ENHANCEMENTS SELECTION ROUTINE **
  80. 2580 CLS
  81. 2600 REM ** PRINT ENHANCEMENTS SUB-MENU **
  82. 2620 PRINT "      PRINT ENHANCEMENTS SUB-MENU"
  83. 2640 PRINT
  84. 2660 PRINT
  85. 2680 PRINT "          1 - UNDERLINED
  86. 2700 PRINT
  87. 2720 PRINT "          2 - EMPHASIZED
  88. 2740 PRINT
  89. 2760 PRINT "          3 - DOUBLE-STRIKE
  90. 2780 PRINT
  91. 2800 PRINT "          4 - EXPANDED
  92. 2820 PRINT
  93. 2840 PRINT "          5 - COMPRESSED
  94. 2860 PRINT
  95. 2880 PRINT "          6 - SUPERSCRIPT
  96. 2900 PRINT
  97. 2920 PRINT "          7 - SUBSCRIPT
  98. 2940 PRINT
  99. 2960 PRINT "          9 - RETURN TO MAIN MENU
  100. 2980 PRINT
  101. 3000 PRINT
  102. 3020 PRINT "          Enter selection :  "
  103. 3040 GOSUB 6020
  104. 3060 IF ITEM=1 THEN 3220
  105. 3080 IF ITEM=2 THEN 3260
  106. 3100 IF ITEM=3 THEN 3300
  107. 3120 IF ITEM=4 THEN 3340
  108. 3140 IF ITEM=5 THEN 3380
  109. 3160 IF ITEM=6 THEN 3420
  110. 3180 IF ITEM=7 THEN 3460
  111. 3200 IF ITEM=9 THEN 1280 ELSE 2560
  112. 3220 LPRINT CHR$(27)CHR$(45)CHR$(1)
  113. 3240 GOTO 5960
  114. 3260 LPRINT CHR$(27)"E"
  115. 3280 GOTO 5960
  116. 3300 LPRINT CHR$(27)"G"
  117. 3320 GOTO 5960
  118. 3340 LPRINT CHR$(27)"W"CHR$(1)
  119. 3360 GOTO 5960
  120. 3380 LPRINT CHR$(27)CHR$(15)
  121. 3400 GOTO 5960
  122. 3420 LPRINT CHR$(27)"S"CHR$(0)
  123. 3440 GOTO 5960
  124. 3460 LPRINT CHR$(27)"S"CHR$(1)
  125. 3480 GOTO 5960
  126. 3500 REM ** PAGE MARGIN SETUP ROUTINE **
  127. 3520 CLS
  128. 3540 ITEM = 0
  129. 3560 REM ** PRINT SUB-MENU **
  130. 3580 PRINT "          PAGE MARGIN SUB-MENU
  131. 3600 PRINT
  132. 3620 PRINT
  133. 3640 PRINT "          1 - RIGHT MARGIN
  134. 3660 PRINT
  135. 3680 PRINT "          2 - LEFT MARGIN
  136. 3700 PRINT
  137. 3720 PRINT "          3 - SKIP OVER PERFORMATION
  138. 3740 PRINT
  139. 3760 PRINT "          4 - PAGE LENGTH IN LINES
  140. 3780 PRINT
  141. 3800 PRINT "          5 - PAGE LENGTH IN INCHES
  142. 3820 PRINT
  143. 3840 PRINT "          9 - RETURN TO MAIN MENU
  144. 3860 PRINT
  145. 3880 PRINT
  146. 3900 PRINT "          Enter selection :  "
  147. 3920 GOSUB 6020
  148. 3940 IF ITEM=1 THEN 4060
  149. 3960 IF ITEM=2 THEN 4200
  150. 3980 IF ITEM=3 THEN 4340
  151. 4000 IF ITEM=4 THEN 4480
  152. 4020 IF ITEM=5 THEN 4640
  153. 4040 IF ITEM=9 THEN 1280
  154. 4060 INPUT "Enter size of new right margin :  ",SIZE
  155. 4080 IF SIZE>0 AND SIZE<80 THEN 4160
  156. 4100 PRINT "ERROR -- Size is not between 0 and 80"
  157. 4120 INPUT "Press ENTER to continue ...",ITEM
  158. 4140 GOTO 3500
  159. 4160 LPRINT CHR$(27)"Q"CHR$(SIZE)
  160. 4180 GOTO 5960
  161. 4200 INPUT "Enter size of new left margin :  ",SIZE
  162. 4220 IF SIZE>0 AND SIZE<80 THEN 4300
  163. 4240 PRINT "ERROR -- Size is not between 0 and 80"
  164. 4260 INPUT "Press ENTER to continue ...",ITEM
  165. 4280 GOTO 3500
  166. 4300 LPRINT CHR$(27)"l"CHR$(SIZE)
  167. 4320 GOTO 5960
  168. 4340 INPUT "Enter number of lines to be skipped :  ",SIZE
  169. 4360 IF SIZE>0 AND SIZE<66 THEN 4440
  170. 4380 PRINT "ERROR -- Number of lines is not between 0 and 66
  171. 4400 INPUT "Press ENTER to continue ...",ITEM
  172. 4420 GOTO 3500
  173. 4440 LPRINT CHR$(27)"N"CHR$(SIZE)
  174. 4460 GOTO 5960
  175. 4480 PRINT "Enter new page length in lines"
  176. 4500 INPUT "(default length is 66) :  ",SIZE
  177. 4520 IF SIZE>0 AND SIZE<128 THEN 4600
  178. 4540 PRINT "ERROR -- Length not between 1 & 127"
  179. 4560 INPUT "Press ENTER to continue ...",SIZE
  180. 4580 GOTO 3500
  181. 4600 LPRINT CHR$(27)"C"CHR$(SIZE)
  182. 4620 GOTO 5960
  183. 4640 PRINT "Enter new page length in inches"
  184. 4660 INPUT "(default length is ll) :  ",SIZE
  185. 4680 IF SIZE>0 AND SIZE<23 THEN 4760
  186. 4700 PRINT "ERROR -- Length is not between 1 & 22"
  187. 4720 INPUT "Press ENTER to continue ... ",SIZE
  188. 4740 GOTO 3500
  189. 4760 LPRINT CHR$(27)"C"CHR$(0)CHR$(SIZE)
  190. 4780 GOTO 5960
  191. 4800 REM ** LINE SPACING SETUP ROUTINE **
  192. 4820 CLS
  193. 4840 REM ** PRINT SUB-MENU
  194. 4860 PRINT "         LINE SPACING SUB-MENU"
  195. 4880 PRINT
  196. 4900 PRINT
  197. 4920 PRINT "          1 - 1/8 INCH
  198. 4940 PRINT
  199. 4960 PRINT "          2 - 7/72 INCH
  200. 4980 PRINT
  201. 5000 PRINT "          3 - 1/6 INCH (default)
  202. 5020 PRINT
  203. 5040 PRINT "          4 - n/72 INCH
  204. 5060 PRINT
  205. 5080 PRINT "          5 - n/216 INCH
  206. 5100 PRINT
  207. 5120 PRINT "          9 - RETURN TO MAIN MENU
  208. 5140 PRINT
  209. 5160 PRINT
  210. 5180 PRINT "          Enter selection :  "
  211. 5200 GOSUB 6020
  212. 5220 IF ITEM=1 THEN 5340
  213. 5240 IF ITEM=2 THEN 5380
  214. 5260 IF ITEM=3 THEN 5420
  215. 5280 IF ITEM=4 THEN 5460
  216. 5300 IF ITEM=5 THEN 5600
  217. 5320 IF ITEM=9 THEN 1280 ELSE 4800
  218. 5340 LPRINT CHR$(27)"0"
  219. 5360 GOTO 5960
  220. 5380 LPRINT CHR$(27)"1"
  221. 5400 GOTO 5960
  222. 5420 LPRINT CHR$(27)"2"
  223. 5440 GOTO 5960
  224. 5460 INPUT "Enter n (0 < n < 85) :  ",SIZE
  225. 5480 IF SIZE>0 AND SIZE<86 THEN 5560
  226. 5500 PRINT "ERROR -- n is out of range"
  227. 5520 INPUT "Press ENTER to continue ... ",SIZE
  228. 5540 GOTO 4800
  229. 5560 LPRINT CHR$(27)"A"CHR$(SIZE)
  230. 5580 GOTO 5960
  231. 5600 INPUT "Enter n (0 < n < 256) :",SIZE
  232. 5620 IF SIZE>0 AND SIZE<256 THEN 5700
  233. 5640 PRINT "ERROR -- n is out of range"
  234. 5660 INPUT "Press ENTER to continue ...",SIZE
  235. 5680 GOTO 4800
  236. 5700 LPRINT CHR$(27)"3"CHR$(SIZE)
  237. 5720 GOTO 5960
  238. 5740 REM ** REINITIALIZE PRINTER **
  239. 5760 LPRINT CHR$(27)"@'
  240. 5780 GOTO 5960
  241. 5800 LPRINT "This is a sample line of text to verify the printer setup:"
  242. 5820 LPRINT "12345678901234567890123456789012345678901234567890123456789012345678901234567890"
  243. 5840 LPRINT
  244. 5860 LPRINT
  245. 5880 LPRINT
  246. 5900 LPRINT
  247. 5920 LPRINT
  248. 5940 GOTO 1280
  249. 5960 REM ** PRINT A REVERSE LINE FEED **
  250. 5980 LPRINT CHR$(27)"j"CHR$(72)
  251. 6000 GOTO 1280
  252. 6020 REM ** GET A MENU SELECTION, RETURN A VALUE FOR "ITEM"
  253. 6040 K$=INKEY$:IF LEN(K$)=0 THEN 6040
  254. 6060 ITEM=ASC(K$)-48
  255. 6080 RETURN
  256. 6100 WIDTH 80
  257. 6120 END
  258.